// pages/index/articles/articles.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    pageNo: 1,
    articleList: '',
    totalPageCount: '',
    // 节流阀，false表示没有加载数据；true表示正在加载数据
    isLoading: false
  },

  /**
   * 生命周期函数--监听页面加载
   */
  getData() {
    // 显示加载中
    this.setData({
      isLoading: true
    })
    wx.showLoading({
      title: '数据加载中...',
      icon: 'loading'
    })

    let that = this;
    wx.request({
      method: 'GET',
      url: 'http://localhost:8080/article/findAll',
      data: {
        pageNo: that.pageNo,
        pageSize: 10
      },
      success(resp) {
        that.setData({
          articleList: [...that.data.articleList, ...resp.data.data.list],
          totalPageCount: resp.data.data.totalPageCount
        })
      }
    })
    // 关闭加载提示框
    wx.hideLoading()
  },
  onLoad(options) {
    this.getData()
  },

  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {
    // 加载第一页数据，数据重置
    this.setData({
      articleList: [],
      pageNo: 1,
      totalPageCount: 0
    })
    this.getData()
    // 关闭加载提示框
    wx.hideLoading()
    // 手动关闭下拉刷新
    wx.stopPullDownRefresh()
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {
    if (this.data.pageNo >= this.data.totalPageCount) {
      wx.showToast({
        title: '没有更多数据!',
        icon: 'none'
      })
      return;
    }
    this.setData({
      pageNo: this.data.pageNo + 1
    })
    this.getData();
  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})